<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8"/>
    <meta name="viewport"
          content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no"/>
    <title>网络网页</title>
    <style type="text/css">
        [v-cloak] {
            display: none !important;
        }
    </style>
</head>
<body>
<div id="app" v-cloak>
    <!--合同文件选择-->
    <select id="contractFile" style="width: 100%;height: 30px" @change="change">
        <option :value="item.id" v-for="(item,index) in contractFile">
            {{item.name}}
        </option>
    </select>
    <!--合同模板内容-->
    <div :data-id="item.id" v-show="currentContractFileId==item.id" v-for="(item,index) in contractFile"
         v-html="item.htmlPath" @input="addComment($event)"></div>
</div>
<script type="text/javascript">
    var userAgent = navigator.userAgent;
    if (userAgent.indexOf('AlipayClient') > -1) {
        // 支付宝小程序的 JS-SDK 防止 404 需要动态加载，如果不需要兼容支付宝小程序，则无需引用此 JS 文件。
        document.writeln('<script src="https://appx/web-view.min.js"' + '>' + '<' + '/' + 'script>');
    } else if (/QQ/i.test(userAgent) && /miniProgram/i.test(userAgent)) {
        // QQ 小程序
        document.write(
            '<script type="text/javascript" src="https://qqq.gtimg.cn/miniprogram/webview_jssdk/qqjssdk-1.0.0.js"><\/script>'
        );
    } else if (/miniProgram/i.test(userAgent) && /micromessenger/i.test(userAgent)) {
        // 微信小程序 JS-SDK 如果不需要兼容微信小程序，则无需引用此 JS 文件。
        document.write('<script type="text/javascript" src="https://res.wx.qq.com/open/js/jweixin-1.4.0.js"><\/script>');
    } else if (/toutiaomicroapp/i.test(userAgent)) {
        // 头条小程序 JS-SDK 如果不需要兼容头条小程序，则无需引用此 JS 文件。
        document.write(
            '<script type="text/javascript" src="https://s3.pstatp.com/toutiao/tmajssdk/jssdk-1.0.1.js"><\/script>');
    } else if (/swan/i.test(userAgent)) {
        // 百度小程序 JS-SDK 如果不需要兼容百度小程序，则无需引用此 JS 文件。
        document.write(
            '<script type="text/javascript" src="https://b.bdstatic.com/searchbox/icms/searchbox/js/swan-2.0.18.js"><\/script>'
        );
    } else if (/quickapp/i.test(userAgent)) {
        // quickapp
        document.write('<script type="text/javascript" src="https://quickapp/jssdk.webview.min.js"><\/script>');
    }
</script>
<!-- uni 的 SDK  -->
<script type="text/javascript" src="uni.webview.1.5.4.js"></script>
<script src="https://cdn.staticfile.org/vue/2.6.0/vue.min.js"></script>
<script src="https://cdn.staticfile.org/axios/0.18.0/axios.min.js"></script>
<script type="text/javascript">
    // 接收参数
    let queryObject = getQueryObject(window.location.href);
    let token = queryObject.token;
    // 待触发 `UniAppJSBridgeReady` 事件后，即可调用 uni 的 API。
    document.addEventListener('UniAppJSBridgeReady', function () {
        uni.getEnv(function (res) {console.log('当前环境：' + JSON.stringify(res))});
        new Vue({
            el: '#app',
            data: function () {
                return {
                    loading: false,
                    contractFile: [],
                    currentContractFileId: 0,// 当前选中的文件id
                    contractFileParamOkNumber:new Set(),   // 记录操作过的文本框id
                }
            },
            created() {
                this.initData();
            },
            methods: {
                initData() {
                    axios.get("//192.168.10.196:8081/ec/contractFile/selectContractFileListAddContentByContractId/" + queryObject.contractId, {
                        headers: {
                            Authorization: "Bearer " + token,
                        },
                    }).then(response => {
                        this.contractFile = response.data.data;
                        // 标签可编辑
                        this.contractFile.forEach(file => {
                            file.htmlPath=file.htmlPath.replace(/contenteditable=\"false\"/g, "contenteditable=\"true\"")
                        });
                        // 默认加载第一个文件
                        this.currentContractFileId = this.contractFile[0].id;
                    }).catch(function (error) { // 请求失败处理
                        console.log(error);
                    });
                },
                // 切换文件
                change(event) {
                    this.currentContractFileId = event.target.value;
                },
                addComment(event) {
                    // 记录点击的输入框个数
                    if (!!event.target.id) {
                        // 已经点击过的输入框
                        this.contractFileParamOkNumber.add(event.target.id);
                        uni.postMessage({
                            data: {
                                okNumber: this.contractFileParamOkNumber.size
                            }
                        });
                    }
                },
            }
        });
    });
    // 获取参数
    function getQueryObject(url) {
        url = (url == null ? window.location.href : url);
        const search = url.substring(url.lastIndexOf('?') + 1)
        const obj = {}
        const reg = /([^?&=]+)=([^?&=]*)/g
        search.replace(reg, (rs, $1, $2) => {
            const name = decodeURIComponent($1)
            let val = decodeURIComponent($2)
            val = String(val)
            obj[name] = val
            return rs
        })
        return obj;
    }
    // 监听触摸事件
    // document.getElementById('contractHtml').addEventListener('touchend', function () {
    //     console.log(document.getElementById('1688789865808824').innerHTML)
    // });

</script>
</body>
</html>

